// 获取提交信息
const commitMsg = process.argv[2];
const path = require("path");
const fs = require("fs");
const axios = require("axios");
const componentsPath = path.resolve(__dirname, "./src/components");


// 所有的组件信息
const componentsGallery = [];
//文件遍历方法
function fileDisplay(filePath) {
      //根据文件路径读取文件，返回文件列表
      let files = fs.readdirSync(filePath);
      //遍历读取到的文件列表 
      for (const filename of files) {
            //获取当前文件的绝对路径
            const filedir = path.join(filePath, filename);
            //根据文件路径获取文件信息，返回一个fs.Stats对象 
            const stats = fs.statSync(filedir);
            const isFile = stats.isFile(); //是文件
            const isDir = stats.isDirectory(); //是文件夹
            if (isFile) {
                  //获取文件的后缀名
                  const extname = path.extname(filedir);
                  if (extname === ".json") {
                        const content = fs.readFileSync(
                              filedir,
                              "utf-8"
                        );
                        componentsGallery.push(JSON.parse(content))
                  }
            } else if (isDir) {
                  fileDisplay(filedir); //递归，如果是文件夹，就继续遍历该文件夹下面的文件
            }
      }
}

//调用文件遍历方法
fileDisplay(componentsPath);


axios.post("http://localhost:7001/component/update", { conponents: componentsGallery, commitMsg, version: 1.0 }).then(res => {
      console.log(res.data)
})

